home *** CD-ROM | disk | FTP | other *** search
/ Softdisk Supreme / Softdisk Supreme.iso / pc / DSK Files / 0-49 / SD010b.dsk / MONEY MARKET.bas < prev    next >
BASIC Source File  |  2003-06-12  |  9KB  |  195 lines

  1. 50  LOMEM: 16384: DIM A(10,10),B(10,10):D$ = "<CTRL-D>"
  2. 112  PRINT D$"OPEN FILE-COUNT"
  3. 114  PRINT D$"READ FILE-COUNT"
  4. 116  INPUT FC%
  5. 118  PRINT D$"CLOSE FILE-COUNT"
  6. 120 FC$ =  STR$(FC%)
  7. 122  PRINT D$"OPEN MATURITY";FC$
  8. 124  PRINT D$"READ MATURITY";FC$
  9. 126  FOR I = 1 TO 10: FOR J = 1 TO 10: INPUT B(I,J): NEXT J: NEXT I
  10. 130  PRINT D$"CLOSE MATURITY";FC$
  11. 132  PRINT D$"OPEN YIELD";FC$
  12. 134  PRINT D$"READ YIELD";FC$
  13. 136  FOR I = 1 TO 10: FOR J = 1 TO 10: INPUT A(I,J): NEXT J: NEXT I
  14. 140  PRINT D$"CLOSE YIELD";FC$
  15. 300  HOME : HTAB 18: PRINT "MENU": PRINT : PRINT : PRINT "PRESS KEY FOR INDICATED FUNCTION :": PRINT 
  16. 350  HTAB 4: PRINT "1-PRINT YIELD TABLE": HTAB 4: PRINT "2-PRINT MATURITY TABLE": PRINT 
  17. 500  HTAB 4: PRINT "3-UPDATE YIELD FILE": HTAB 4: PRINT "4-UPDATE MATURITY FILE": PRINT : HTAB 4: PRINT "5-PRODUCE YIELD GRAPH": HTAB 4: PRINT "6-PRODUCE MATURITY GRAPH": PRINT 
  18. 520  HTAB 4: PRINT "7-BEGIN NEW SHORT TERM FILE": HTAB 4: PRINT "8-PRODUCE LONG TERM YIELD GRAPH": HTAB 4: PRINT "9-PRODUCE LONG TERM MATURITY GRAPH": PRINT : HTAB 4: PRINT "0-END PROGRAM"
  19. 600  HTAB 4: GET KEY$: IF KEY$ <"0"  OR KEY$ >"9"  THEN  PRINT "INVALID KEY": FOR I = 1 TO 200: NEXT I: GOTO 300
  20. 800  IF KEY$ = "0"  THEN  END 
  21. 820  ON  VAL(KEY$) GOSUB 1000,2000,3000,4000,5000,6000,7000,8000,9000: GOTO 300
  22. 1000  HOME : HTAB 7: PRINT "YIELD TABLE": PRINT : PRINT "WK#   FUND1 FUND2 FUND3 FUND4 FUND5"
  23. 1010  FOR I = 1 TO 10: PRINT : PRINT I;:HT = 7
  24. 1020  FOR J = 1 TO 5
  25. 1030  HTAB HT: IF A(J,I) < >0  THEN  PRINT A(J,I);:
  26. 1040 HT = HT +6: NEXT J: NEXT I
  27. 1050  PRINT : PRINT : PRINT "YIELD TABLE COMPLETE": PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: PRINT : RETURN 
  28. 2000  HOME : HTAB 5: PRINT "MATURITY TABLE": PRINT : PRINT "WK#   FUND1 FUND2 FUND3 FUND4 FUND5"
  29. 2010  FOR I = 1 TO 10: PRINT : PRINT I;:HT = 7
  30. 2020  FOR J = 1 TO 5
  31. 2030  HTAB HT: IF B(J,I) < >0  THEN  PRINT B(J,I);:
  32. 2040 HT = HT +6: NEXT J: NEXT I
  33. 2050  PRINT : PRINT : PRINT "MATURITY TABLE COMPLETE": PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: PRINT : RETURN 
  34. 3000  HOME : PRINT : HTAB 10: PRINT "YIELD UPDATE ROUTINE": PRINT 
  35. 3020  PRINT : INPUT "ENTER FUND # ";F%: IF F% >10  THEN  PRINT "ONLY 10 FUND NUMBERS PERMITTED": GOTO 3020
  36. 3030  INPUT "ENTER WEEK # ";W%: IF W% >10  THEN  PRINT "ONLY 10 WEEKS PERMITTED": GOTO 3030
  37. 3040  INPUT "ENTER NEW YIELD ";Y: IF Y <10  OR Y >20  THEN  PRINT "INVALID YIELD": GOTO 3040
  38. 3070 A(F%,W%) = Y
  39. 3080  PRINT "UPDATE APPLIED": PRINT "ANY FURTHER UPDATES(Y/N)";: GET Q$: IF Q$ = "Y"  THEN  GOTO 3020
  40. 3090  IF Q$ = "Y"  THEN  GOTO 3020
  41. 3100  PRINT : PRINT "SAVE UPDATED FILE(Y/N)";: GET Q$: PRINT : IF Q$ < >"Y"  THEN  GOTO 3500
  42. 3212  PRINT D$"OPEN FILE-COUNT"
  43. 3214  PRINT D$"READ FILE-COUNT"
  44. 3216  INPUT FC%
  45. 3218  PRINT D$"CLOSE FILE-COUNT"
  46. 3219 FC$ =  STR$(FC%)
  47. 3220  PRINT D$;"OPEN YIELD";FC$
  48. 3230  PRINT D$"WRITE YIELD";FC$
  49. 3240  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT A(I,J): NEXT J: NEXT I
  50. 3290  PRINT D$"CLOSE YIELD";FC$
  51. 3300  PRINT "YIELD FILE SAVED"
  52. 3500  PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: RETURN 
  53. 4000  HOME : PRINT : HTAB 9: PRINT "MATURITY UPDATE ROUTINE": PRINT 
  54. 4020  PRINT : INPUT "ENTER FUND # ";F%: IF F% >10  THEN  PRINT "ONLY 10 FUND NUMBERS PERMITTED": GOTO 4020
  55. 4030  INPUT "ENTER WEEK # ";W%: IF W% >10  THEN  PRINT "ONLY 10 WEEKS PERMITTED": GOTO 4030
  56. 4040  INPUT "ENTER NEW MATURITY ";M: IF M <2  OR M >40  THEN  PRINT "INVALID MATURITY": GOTO 4040
  57. 4080 B(F%,W%) = M: PRINT "UPDATE APPLIED": PRINT "ANY FURTHER UPDATES(Y/N)";: GET Q$: IF Q$ = "Y"  THEN  GOTO 4020
  58. 4100  PRINT : PRINT "SAVE UPDATED FILE(Y/N)";: GET Q$: PRINT : IF Q$ < >"Y"  THEN  GOTO 4500
  59. 4212  PRINT D$"OPEN FILE-COUNT"
  60. 4214  PRINT D$"READ FILE-COUNT"
  61. 4216  INPUT FC%
  62. 4218  PRINT D$"CLOSE FILE-COUNT"
  63. 4219 FC$ =  STR$(FC%)
  64. 4220  PRINT D$;"OPEN MATURITY";FC$
  65. 4230  PRINT D$;"WRITE MATURITY";FC$
  66. 4240  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT B(I,J): NEXT J: NEXT I
  67. 4290  PRINT D$;"CLOSE MATURITY";FC$
  68. 4300  PRINT "MATURITY FILE SAVED"
  69. 4500  PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: RETURN 
  70. 5000  HGR :CSAV = 7:F% = 0: HCOLOR= CSAV: HPLOT 0,0 TO 0,159 TO 279,159
  71. 5050 W% = 1:XSAV = 0:CSAV = CSAV -1: HCOLOR= CSAV
  72. 5057  IF CSAV = 4  THEN CSAV = 3: HCOLOR= CSAV
  73. 5060 F% = F% +1: IF F% >10  THEN  GOTO 5200
  74. 5070  IF A(F%,1) = 0  THEN  GOTO 5200
  75. 5080 YSAV =  -15.9 *A(F%,W%) +318
  76. 5100 W% = W% +1: IF W% >10  THEN  GOTO 5050
  77. 5120  IF A(F%,W%) = 0  THEN  GOTO 5050
  78. 5130 Y =  -15.9 *A(F%,W%) +318
  79. 5140 X = XSAV +20
  80. 5150  HPLOT XSAV,YSAV TO X,Y
  81. 5160 XSAV = X:YSAV = Y
  82. 5170  GOTO 5100
  83. 5200  VTAB 21: HTAB 10: PRINT "YIELD GRAPH": PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: TEXT : RETURN 
  84. 6000  HGR :CSAV = 7:F% = 0: HCOLOR= CSAV: HPLOT 0,0 TO 0,159 TO 279,159
  85. 6050 W% = 1:XSAV = 0:CSAV = CSAV -1: HCOLOR= CSAV
  86. 6057  IF CSAV = 4  THEN CSAV = 3: HCOLOR= CSAV
  87. 6060 F% = F% +1: IF F% >10  THEN  GOTO 6200
  88. 6070  IF B(F%,1) = 0  THEN  GOTO 6200
  89. 6080 YSAV =  -4.18 *B(F%,W%) +167.2
  90. 6100 W% = W% +1: IF W% >10  THEN  GOTO 6050
  91. 6120  IF B(F%,W%) = 0  THEN  GOTO 6050
  92. 6130 Y =  -4.18 *B(F%,W%) +167.2
  93. 6140 X = XSAV +20
  94. 6150  HPLOT XSAV,YSAV TO X,Y
  95. 6160 XSAV = X:YSAV = Y
  96. 6170  GOTO 6100
  97. 6200  VTAB 21: HTAB 9: PRINT "MATURITY GRAPH": PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: TEXT : RETURN 
  98. 7000  HOME : PRINT : HTAB 4: PRINT "NEW SHORT TERM FILE ROUTINE": PRINT : PRINT "ENTER NUMBER OF DESIRED FUNCTION": PRINT : PRINT "1-ADD NEW SHORT TERM PERIOD": PRINT : PRINT "2-REINITIALIZE SHORT TERM FILES": GET KEY$: PRINT 
  99. 7002  IF KEY$ < >"2"  THEN  GOTO 7050
  100. 7004  PRINT D$"OPEN FILE-COUNT"
  101. 7005  PRINT D$"READ FILE-COUNT"
  102. 7006  INPUT FC%
  103. 7007  PRINT D$"CLOSE FILE-COUNT"
  104. 7008  FOR I = 1 TO FC%:I$ =  STR$(I)
  105. 7009  PRINT D$"DELETE YIELD";I$
  106. 7010  PRINT D$"DELETE MATURITY";I$
  107. 7012  NEXT I
  108. 7014  PRINT D$"OPEN YIELD1"
  109. 7015  PRINT D$"WRITE YIELD1"
  110. 7016  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT Z1: NEXT J: NEXT I
  111. 7017  PRINT D$"CLOSE YIELD1"
  112. 7018  PRINT D$"OPEN MATURITY1"
  113. 7019  PRINT D$"WRITE MATURITY1"
  114. 7020  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT Z1: NEXT J: NEXT I
  115. 7021  PRINT D$"CLOSE MATURITY1"
  116. 7022  PRINT D$"OPEN FILE-COUNT"
  117. 7024  PRINT D$"WRITE FILE-COUNT"
  118. 7026 FC% = 1: PRINT FC%
  119. 7028  PRINT D$"CLOSE FILE-COUNT"
  120. 7030  PRINT "FILES INITIALIZED": PRINT : GOTO 7300
  121. 7050  PRINT D$"OPEN FILE-COUNT"
  122. 7052  PRINT D$"READ FILE-COUNT"
  123. 7053  INPUT FC%
  124. 7054  PRINT D$"CLOSE FILE-COUNT"
  125. 7055  PRINT D$"OPEN FILE-COUNT"
  126. 7056 FC% = FC% +1
  127. 7057  PRINT D$"WRITE FILE-COUNT"
  128. 7058  PRINT FC%
  129. 7060  PRINT D$"CLOSE FILE-COUNT"
  130. 7062 FC$ =  STR$(FC%)
  131. 7065  PRINT D$"OPEN YIELD";FC$
  132. 7066  PRINT D$"WRITE YIELD";FC$
  133. 7067  REM  ZERO OUT NEW FILE
  134. 7068  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT Z1: NEXT J: NEXT I
  135. 7078  PRINT D$"CLOSE YIELD";FC$
  136. 7080  PRINT D$"OPEN MATURITY";FC$
  137. 7082  PRINT D$"WRITE MATURITY";FC$
  138. 7084  FOR I = 1 TO 10: FOR J = 1 TO 10: PRINT Z1: NEXT J: NEXT I
  139. 7094  PRINT D$"CLOSE MATURITY";FC$
  140. 7200  PRINT "NEW FILES CREATED": PRINT 
  141. 7300  PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: PRINT 
  142. 7320  RETURN 
  143. 8000  PRINT 
  144. 8001  PRINT D$"OPEN FILE-COUNT"
  145. 8002  PRINT D$"READ FILE-COUNT"
  146. 8004  INPUT FC%
  147. 8006  PRINT D$"CLOSE FILE-COUNT"
  148. 8008  FOR I = 1 TO FC%:I$ =  STR$(I)
  149. 8009  PRINT D$"OPEN YIELD";I$
  150. 8010  NEXT I
  151. 8012  HGR :CSAV = 7:F% = 0: HCOLOR= CSAV: HPLOT 0,0 TO 0,159 TO 279,159
  152. 8014 X =  FRE(0):F% = F% +1:P% = 1:P$ =  STR$(P%):W% = 1:XSAV = 0:CSAV = CSAV -1: HCOLOR= CSAV
  153. 8020  IF CSAV = 4  THEN CSAV = 3: HCOLOR= CSAV
  154. 8025  IF F% >10  THEN  GOTO 8200
  155. 8030  PRINT D$"READ YIELD";P$
  156. 8035  FOR J = 1 TO 10: INPUT A(F%,J): NEXT J
  157. 8050  IF A(F%,1) = 0  THEN  GOTO 8200
  158. 8055  IF P% = 1  THEN YSAV =  -15.9 *A(F%,W%) +318
  159. 8060 W% = W% +1
  160. 8070  IF W% >10  AND P% <FC%  THEN P% = P% +1:P$ =  STR$(P%):W% = 0: GOTO 8030
  161. 8080  IF W% >10  THEN  GOTO 8014
  162. 8085  IF A(F%,W%) = 0  THEN  GOTO 8014
  163. 8090 Y =  -15.9 *A(F%,W%) +318:X = XSAV +5
  164. 8110  HPLOT XSAV,YSAV TO X,Y
  165. 8120 XSAV = X:YSAV = Y: GOTO 8060
  166. 8200  FOR I = 1 TO FC%:I$ =  STR$(I)
  167. 8220  PRINT D$"CLOSE YIELD";I$
  168. 8230  NEXT I
  169. 8300  VTAB 21: PRINT "LONG TERM YIELD GRAPH": PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: TEXT : RETURN 
  170. 9000  PRINT 
  171. 9001  PRINT D$"OPEN FILE-COUNT"
  172. 9002  PRINT D$"READ FILE-COUNT"
  173. 9004  INPUT FC%
  174. 9006  PRINT D$"CLOSE FILE-COUNT"
  175. 9008  FOR I = 1 TO FC%:I$ =  STR$(I)
  176. 9009  PRINT D$"OPEN MATURITY";I$
  177. 9010  NEXT I
  178. 9011  HGR :CSAV = 7:F% = 0: HCOLOR= CSAV
  179. 9012  HPLOT 0,0 TO 0,159 TO 279,159
  180. 9014 X =  FRE(0):F% = F% +1:P% = 1:P$ =  STR$(P%):W% = 1:XSAV = 0:CSAV = CSAV -1: HCOLOR= CSAV
  181. 9020  IF CSAV = 4  THEN CSAV = 3: HCOLOR= CSAV
  182. 9025  IF F% >10  THEN  GOTO 9200
  183. 9030  PRINT D$"READ MATURITY";P$
  184. 9035  FOR J = 1 TO 10: INPUT B(F%,J): NEXT J
  185. 9050  IF B(F%,1) = 0  THEN  GOTO 9200
  186. 9055  IF P% = 1  THEN YSAV =  -4.18 *B(F%,W%) +167.2
  187. 9060 W% = W% +1
  188. 9070  IF W% >10  AND P% <FC%  THEN P% = P% +1:P$ =  STR$(P%):W% = 0: GOTO 9030
  189. 9080  IF W% >10  THEN  GOTO 9014
  190. 9085  IF B(F%,W%) = 0  THEN  GOTO 9014
  191. 9090 Y =  -4.18 *B(F%,W%) +167.2:X = XSAV +5: HPLOT XSAV,YSAV TO X,Y:XSAV = X:YSAV = Y: GOTO 9060
  192. 9200  FOR I = 1 TO FC%:I$ =  STR$(I)
  193. 9220  PRINT D$"CLOSE MATURITY";I$
  194. 9230  NEXT I
  195. 9300  VTAB 21: PRINT "LONG TERM MATURITY GRAPH": PRINT : PRINT "HIT ANY KEY TO RETURN TO MENU";: GET KEY$: TEXT : RETURN